package com.dao.c.backend.advice;


import com.dao.c.backend.common.CommonResult;
import com.dao.c.backend.common.StatusCode;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

//局部异常处理（对指令相同的异常） 局部优先级高，全局优先级低，可以把特有的处理逻辑放在局部异常处理  公共处理逻辑放到全局异常
//全局处理异常 对所有的controller的指定异常都会捕获和处理
@RestControllerAdvice
//@ControllerAdvice+@ResponseBody
public class GlobalHandlerExceptionController {
    //处理异常上 使用Exception 这样  包含常用的所有异常情况
    @ExceptionHandler({ArithmeticException.class,Exception.class})
    public CommonResult handlerAtiException(Exception e){
        System.out.println("全局异常处理:"+e.toString());
        e.printStackTrace();
        return new CommonResult(StatusCode.ERROR,"出错了，请联系管理员",null);
    }
}
